package org.demos.springaiargdemo1.model.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class RAGResponse {
    
    /**
     * 生成的内容
     */
    private String content;
    
    /**
     * 检索到的文档列表
     */
    private List<RetrievedDocument> documents;
    
    /**
     * 是否是最后一个块
     */
    private boolean isLast;
    
    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    public static class RetrievedDocument {
        
        /**
         * 文档ID
         */
        private String id;
        
        /**
         * 文档标题/名称
         */
        private String title;
        
        /**
         * 文档内容片段
         */
        private String content;
        
        /**
         * 文档来源
         */
        private String source;
        
        /**
         * 相似度分数
         */
        private Double score;
        
        /**
         * 文档元数据
         */
        private String metadata;
    }
} 